package com.sl.core.engine.log.store;

import com.sl.core.engine.log.store.domain.bo.ProcessLogListByConditionBO;
import com.sl.core.engine.log.store.domain.dto.LogDetailDTO;
import com.sl.core.engine.log.store.domain.dto.MainLogDTO;
import com.sl.core.engine.log.store.domain.entity.LogDetailDO;
import com.sl.core.engine.log.store.domain.entity.MainLogDO;

import java.util.Date;
import java.util.List;

public interface IProcessLogStore {

    Boolean startMain(MainLogDO mainLogDO);

    Boolean finishMain(String tid,Date endTime,Integer state);

    Boolean saveDetail(LogDetailDO logDetailDO);

    List<MainLogDTO> listByCondition(ProcessLogListByConditionBO processLogListByConditionBO);

    List<LogDetailDTO> getDetailByTid(String tid, Date logTime);

    Boolean updateStateById(String id, Integer state);

    MainLogDTO getMainByTid(String tid, Date logTime);
}
